home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1995 / MacHack 1995.toast / Presentations / Presentations ’88 / Feldt's Object Stuff / SSG include / objectMgr.h < prev    next >
Text File  |  1987-04-11  |  2KB  |  110 lines

  1. /*                             3105 Sunnywood                                    */
  2. /*                        Ann Arbor, Michigan 48103                            */
  3. /*                             (313) 996-4238                                    */
  4.  
  5. /*                   copyright © 1987 Small Systems Guild                         */
  6.  
  7. /*                      source code compilable using                            */
  8. /*                       Lightspeed C compiler 2.01                            */
  9.  
  10. #include    <extender.h>
  11.  
  12. #define        OBJ_SYNC    3047158L            /* object validation constant    */
  13.  
  14.             /* type constant declarations for transportability    */
  15.  
  16. #define        SHORT        int
  17. #define        USHORT        unsigned int
  18. #define        LONG        long
  19. #define        ULONG        unsigned long
  20. #define        BYTE        char
  21. #define        UBYTE        unsigned char
  22.  
  23.             /* object type constants for object isa field        */
  24.  
  25. #define        UNKNOWN        0
  26.  
  27. #define        OBJECT        1                                /* object instance    */
  28. #define        WINDOW        11                                /* window instance    */
  29.  
  30.             /* message selector constants for object methods    */
  31.  
  32. #define        NEW            1
  33. #define        SELF        2
  34. #define        CLASS        3
  35. #define        SIZE        4
  36. #define        VALID        5
  37. #define        ASK_STATUS    6
  38. #define        SET_STATUS    7
  39. #define        HIDE        20
  40. #define        SHOW        21
  41. #define        ACTIVATE    22
  42. #define        DEACTIVATE    23
  43. #define        MOVE        24
  44. #define        GROW        25
  45. #define        UPDATE        26
  46.  
  47. #define        FREE        99
  48.  
  49.             /* message status constants for object status field    */
  50.  
  51. #define        INACTIVE    1
  52. #define        ACTIVE        2
  53. #define        VISIBLE        3
  54. #define        INVISIBLE    4
  55.  
  56. #define        DAMAGED        99
  57.  
  58. typedef struct {
  59.             USHORT            isa;
  60.             USHORT            size;
  61.             USHORT            status;
  62.             ULONG            sync;
  63.             Handle            id;
  64.         } object;
  65.  
  66. typedef struct {
  67.             Handle        objHndl;
  68.             ULONG        objDat1;
  69.             ULONG        objDat2;
  70.             ULONG        objDat3;
  71.             ULONG        objDat4;
  72.         } msgArgs;
  73.  
  74. typedef struct {
  75.             USHORT            isa;
  76.             USHORT            size;
  77.             USHORT            status;
  78.             ULONG            sync;
  79.             Handle            id;
  80.             WindowPtr        wPtr;
  81.         } window;
  82.  
  83. Handle         msg();
  84. Handle         _msg();
  85. Handle         class_any_object();
  86.  
  87. Handle         Object();
  88. Handle        new_object();
  89. Handle         class_object();
  90. Handle         size_object();
  91. Handle        self_object();
  92. Handle         ask_object();
  93. Handle         set_object();
  94. Handle         valid_object();
  95. Handle         free_object();
  96.  
  97. Handle         Window();
  98. Handle        new_window();
  99. WindowPtr    crt_window();
  100. WDHandle     setup_WData();
  101. Handle        show_window();
  102. Handle         hide_window();
  103. Handle        show_window();
  104. Handle         actv_window();
  105. Handle        deactv_window();
  106. Handle        move_window();
  107. Handle        grow_window();
  108. Handle         updt_window();
  109. Handle         free_window();
  110.